You don’t stop learning just because you’ve landed your first job. You should continue with all the learning you did before but never finished! Now that you have some financial stability, you have the luxury of time to fill in the gaps in your knowledge.

Read technical books cover to cover#

In a world of tweets and content-light blog posts, books are an oasis of expertise in the desert of serious technical discussion.

Beware the “Tutorial Trap”— endlessly going through tutorial after tutorial. Go deep on a few important things. If you feel like you want to patch some holes in your CS knowledge, get The Imposter’s Handbook, which covers everything from Compilers to Lambda Calculus, or check out TeachYourselfCS.

Read technical books

Read framework/library source code#

You can learn a lot by comparing experts’ code to yours; look for the intentional differences from what is normally taught in tutorials and ask why they exist.

Learn more languages/frameworks#

Learn more languages/frameworks. Exposure therapy works when learning to bet on technologies!

Learn intellectual history#

Learn the intellectual history of all the tools you use— what existed before? What led to their creation? Who created them? What are they doing now? You can explore this in the Know Your Tools chapter.

Follow people over projects#

In fact, start following people over projects. Trace people’s pasts and their mentors. What are they working on today? Pick up what they put down.

Follow people

Build useful side projects#

Continue building useful side projects. Don’t memorize everything and trust that you can keep everything in your head. Start making cheatsheets, repos, and blogposts to open source your knowledge.

Teach what you learn#

You really only know that you have fully learned something when you can teach it. In the process of writing and speaking, you will discover things you thought you knew but really didn’t. You will also assemble a concentrated resource of everything you know about a particular topic, which you can (and will!) pull up in the future.

Teach what you learn

Ways of teaching#

Here are ways to teach what you learn:

Do talks#

Talk at work, at meetups, to your family, to your dog, to yourself on your own YouTube channel. I don’t care that you’re an introvert; so am I. So are 90% of developers (I don’t know the real number, but it’s a lot). Do you think you can avoid public speaking about technology for the rest of your career? Do you think it will ever get easier? Do you think you will learn faster if you just keep to yourself all day?

Talk

Speaking forces you to have skin in the game. Any embarrassment that results is only temporary— in fact, it will drive you to be better. Worried that your talk will suck? Don’t worry; it will! Everyone has some amount of bad talks in them. Better to get them out earlier (when it doesn’t matter) than later (when you don’t have a choice). I challenge you to do ten bad talks in a row and not improve. Do talks.

Guest writing for industry sites#

You can start with everybody-can-post community venues like Dev.to, but eventually, you want to get yourself published in selective, peer-reviewed industry sites. For frontend developers, these are places like CSS Tricks, Smashing Magazine, and A List Apart. These are not only great resume items, but the work involved in putting together a high-quality article builds your knowledge (and subsequently, your reputation) like no other.

Write for industry site

Blog#

Blogging is the ultimate form of permissionless learning; you can learn in public on your own terms, under your own domain. If you want to build brand or domain expertise, focus your writing on a specific topic so people will start to recognize your work and subscribe for updates.

Answer questions#

Believe it or not, you are limited by your interests and your own questions. There are things you don’t even know that you don’t know. One way to get ideas for blog posts and to learn faster than you can alone is to answer other people’s questions.

Answer people questions

There is an unlimited number of people looking for help on StackOverflow, Twitter, Reddit, and GitHub. If you practice answering questions, you get better at answering questions (Save your keystrokes! Put frequent answers into a blog post!). Furthermore, you will start finding questions you never thought to ask. Often, these questions will come up in your future work. The other benefit of "being helpful on the Internet” is that you will get noticed by the maintainers of these communities and recruited to help.

“When one teaches, two learn.”

- Robert Heinlein

All of this learning in public will also help you build your network. The benefits from your network compound over time, so you might as well start early.

Do interviews#

Finally, you want to stay sharp at doing interviews. This will not be your last job. Look around and do interviews once a year. You have the upper hand in everything from networking to company selection to negotiating when your alternative is simply staying at the job you already have.

Do interviews once a year

Adding Value

Quiz Yourself on Junior Developer